#if !defined(__APP_MQTT_H)
#define __APP_MQTT_H

#define ADDRESS "tcp://192.168.12.52:1883"
#define CLIENTID "4e0d9971-d0e0-4c0a-aa20-687ab9ee392c"
#define TOPIC_RTG "remote_to_gateway" // 收消息的topic
#define TOPIC_GTR "gateway_to_remote" // 发消息的topic
#define QOS 1
#define TIMEOUT 10000L

/**
 * @brief 初始化MQTT模块
 *
 * @return int 成功：0, 失败：-1
 */
int app_mqtt_init(void);

/**
 * @brief 关闭MQTT模块
 *
 */
void app_mqtt_close(void);

/**
 * @brief 发送消息
 *
 * @param json 消息内容
 * @return int int 成功：0, 失败：-1
 */
int app_mqtt_send(char *json);

/**
 * @brief 注册接收处理远程消息的回调函数
 *
 * @param callback 处理消息的回调函数
 */
void app_mqtt_registerRecvCallback(int (*callback)(char *json));

#endif // __APP_MQTT_H
